VT-d: don't reject valid DMAR/ATSR tables on systems with multiple PCI segments
authorJan Beulich <jbeulich@novell.com>
Sat, 13 Aug 2011 09:12:49 +0000 (10:12 +0100)
committerJan Beulich <jbeulich@novell.com>
Sat, 13 Aug 2011 09:12:49 +0000 (10:12 +0100)
commit356ea64599b7bc49f570d747f3fcee8cb7768d99
tree5e41e4016f2766bd7f227cbabf618f5f2ffbf1f6
parentd30a9b356bd3a51191004c2da26615a97e91af91
VT-d: don't reject valid DMAR/ATSR tables on systems with multiple PCI segments

On multi-PCI-segment systems, each segment has to be expected to have
an include-all DRHD and an all-ports ATSR, so the firmware consistency
check incorrectly rejects valid configurations there (which is
particularly problematic when the firmware also pre-enabled x2apic
mode, as the system will panic in that case due to being unable to
enable interrupt remapping). Thus constrain the check to just segment
0 for now; once full multi-segment support is there (which I'm working
on), it can be revisited whether we'd want to track this per segment,
or whether we trust the firmware of such large systems.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
xen/drivers/passthrough/vtd/dmar.c